import book.BookList;
import user.AdminUser;
import user.NormalUser;
import user.User;
import java.util.Scanner;
public class Main {

    //登录操作，登录完成后我们需要知道登录的是管理员还是普通用户
    public static User login() {
        System.out.println("请输入你的姓名：");
        //从键盘中获取输入的值
        Scanner scanner = new Scanner(System.in);
        String name = scanner.nextLine();
        System.out.println("请输入你的身份信息：1-》管理员   0-》普通用户");
        int choice = scanner.nextInt();

        //默认只有1或者0
        if (choice == 1) {
            //管理员，并返回管理员菜单界面
            return new AdminUser(name);//发生向上转型
        } else {
            //普通用户，返回普通用户菜单界面
            return new NormalUser(name);
        }
    }

    public static void main(String[] args) {
        //创建书架
        BookList bookList = new BookList();
        User user = login();
        while(true) {
            user.menu();//发生动态绑定。谁是user，调用的就是谁的menu方法

            //从键盘中获取操作
            Scanner scanner = new Scanner(System.in);
            System.out.println("请输入你的操作：");
            int choice = scanner.nextInt();

            //根据 choice 的选择 来决定调用哪个方法
            user.doOperations(choice,bookList);
        }
    }
}
